package exportacao;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;

@RunWith(Parameterized.class)
public class LerXMLTest {
	private String file;
	private String fileCompare;
	private String smp;
	
	public LerXMLTest(String _file, String _fileCompare, String _smp) {
		this.file = _file;
		this.fileCompare = _fileCompare;
		this.smp = _smp;
	}
	
	@Ignore	
	@Test
	public void testaLeituraXML(){
		LerXML lerXML = new LerXML();
		List<BeanLerXML> lista = lerXML.listaValores(file, smp);
		System.out.println(lista.size());
		for (BeanLerXML beanLerXML : lista) {
			System.out.println(beanLerXML.toString());
		}
	}
	
	@Test
	public void listaErros(){
		LerXML lerXML = new LerXML();
		List<BeanLerXML> listaCliente = lerXML.listaValores(file, smp);
		List<BeanLerXML> listaVisent = lerXML.listaValores(fileCompare, smp);
		List<BeanLerXML> listaErrosVisent = new ArrayList<BeanLerXML>();
		List<BeanLerXML> listaErrosCliente = new ArrayList<BeanLerXML>();
		try{
			listaErrosVisent = lerXML.testaComparacaoXMLVisent(listaCliente, listaVisent);
			listaErrosCliente = lerXML.testaComparacaoXMLCliente(listaCliente, listaVisent);
			System.out.println("Tem no doc visent e não tem no doc claro");
			for (BeanLerXML bean : listaErrosVisent) {
				System.out.println(bean.toString());
			}
			System.out.println("\n\nTem no doc claro e não tem no doc visent");
			for (BeanLerXML bean : listaErrosCliente) {
				System.out.println(bean.toString());
			}
		}catch(NullPointerException e){
			e.printStackTrace();
			System.out.println("Nenhum erro encontrado!");
		}
	}
	
	@Parameters
	public static List<Object[]> datadriven() {
		return Arrays.asList(new Object[][] { {
			"C:/Users/mateusnere/Documents/Rafael/TECNOLOGIA XML/JAN2015/SMP_ANATEL_CLARO_2013.xml",
//			"C:/Users/mateusnere/Documents/Rafael/TECNOLOGIA XML/JAN2015/Coleta SMP 20-01-2015 - Copia.xml",
			"C:/Users/mateusnere/Documents/Rafael/TECNOLOGIA XML/JAN2015/Coleta SMP 22-01-2015.xml",
//			"C:/Users/mateusnere/Documents/Rafael/TECNOLOGIA XML/SMP_ANATEL_CLARO_2013.xml",
//			"C:/Users/mateusnere/Documents/Rafael/TECNOLOGIA XML/Coleta SMP 23-08-2014.xml",
			"SMP7"}
			});
	}
	
}
